package java_0308;

/**
 * 如何判断一个数是否是2的k次方？这里不需要确定k的值。
 * 例如：1是2的0次方，2是2的1次方，4是2的平方，
 * 求N是不是2的K次方
 */
public class IsPower {
    public static void main(String[] args) {
        System.out.println(isPower(256));
    }

    private static boolean isPower(int i) {
        if(i<1){
            return false;
        }
        int a=1;
        while(a<=i){
            if(a==i){
                return true;
            }
            a=a*2;
        }
        return false;
    }
}
// class moveByte {
//    public static boolean isPower(int n)
//    {  if(n<1)
//        return false;
//        int m=n&(n-1);
//        return m==0;  }
//     public static void main(String[] args) {
//        System.out.println(isPower(3));
//     }
//}